'''
解析xml，只有经常用，才可能熟悉
'''
from lxml import etree
# 从文件里面，拿到html代码

with open('simple.html',encoding='utf-8') as file_obj:
    html_text = file_obj.read()

# 已经拿到了要分析 的html代码
# 拿到form1的action属性中的内容

# 得到html的解析对象
html = etree.HTML(html_text)

# print(result.decode('utf-8'))

result = html.xpath("//body")

# print(result[0])

# 得到直接子节点
result = html.xpath("//body/form")
# print(result)

# 知道子节点，找到父节点，找到body的父节点。通过parent::，找到父节点
result = html.xpath("//body/parent::html")
# print(result)

# 属性匹配，找到form，并且id属性为form2的节点

result = html.xpath("//form[@id='form2']")
# print(result)

# 文本获取，text方法，可以获取文本中的节点
result = html.xpath("//div[@id='text']/text()")

# print(result)

# 属性获取，获取id 为 text 的div节点的id属性的值

result = html.xpath("//div[@id='text']/@id")
#print(result)

# 根据多个属性的值，得到一个节点. 得到属性 class="a" readonly="readonly"。的form节点

result = html.xpath("//form[contains(@class,'a') and @readonly='readonly']/@readonly[1]")

print(result)

# 按序选择














